package pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class WlCategoryExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public WlCategoryExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andCateidIsNull() {
            addCriterion("cateId is null");
            return (Criteria) this;
        }

        public Criteria andCateidIsNotNull() {
            addCriterion("cateId is not null");
            return (Criteria) this;
        }

        public Criteria andCateidEqualTo(String value) {
            addCriterion("cateId =", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidNotEqualTo(String value) {
            addCriterion("cateId <>", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidGreaterThan(String value) {
            addCriterion("cateId >", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidGreaterThanOrEqualTo(String value) {
            addCriterion("cateId >=", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidLessThan(String value) {
            addCriterion("cateId <", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidLessThanOrEqualTo(String value) {
            addCriterion("cateId <=", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidLike(String value) {
            addCriterion("cateId like", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidNotLike(String value) {
            addCriterion("cateId not like", value, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidIn(List<String> values) {
            addCriterion("cateId in", values, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidNotIn(List<String> values) {
            addCriterion("cateId not in", values, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidBetween(String value1, String value2) {
            addCriterion("cateId between", value1, value2, "cateid");
            return (Criteria) this;
        }

        public Criteria andCateidNotBetween(String value1, String value2) {
            addCriterion("cateId not between", value1, value2, "cateid");
            return (Criteria) this;
        }

        public Criteria andCatenameIsNull() {
            addCriterion("cateName is null");
            return (Criteria) this;
        }

        public Criteria andCatenameIsNotNull() {
            addCriterion("cateName is not null");
            return (Criteria) this;
        }

        public Criteria andCatenameEqualTo(String value) {
            addCriterion("cateName =", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameNotEqualTo(String value) {
            addCriterion("cateName <>", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameGreaterThan(String value) {
            addCriterion("cateName >", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameGreaterThanOrEqualTo(String value) {
            addCriterion("cateName >=", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameLessThan(String value) {
            addCriterion("cateName <", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameLessThanOrEqualTo(String value) {
            addCriterion("cateName <=", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameLike(String value) {
            addCriterion("cateName like", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameNotLike(String value) {
            addCriterion("cateName not like", value, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameIn(List<String> values) {
            addCriterion("cateName in", values, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameNotIn(List<String> values) {
            addCriterion("cateName not in", values, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameBetween(String value1, String value2) {
            addCriterion("cateName between", value1, value2, "catename");
            return (Criteria) this;
        }

        public Criteria andCatenameNotBetween(String value1, String value2) {
            addCriterion("cateName not between", value1, value2, "catename");
            return (Criteria) this;
        }

        public Criteria andParentidIsNull() {
            addCriterion("parentId is null");
            return (Criteria) this;
        }

        public Criteria andParentidIsNotNull() {
            addCriterion("parentId is not null");
            return (Criteria) this;
        }

        public Criteria andParentidEqualTo(String value) {
            addCriterion("parentId =", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotEqualTo(String value) {
            addCriterion("parentId <>", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidGreaterThan(String value) {
            addCriterion("parentId >", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidGreaterThanOrEqualTo(String value) {
            addCriterion("parentId >=", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidLessThan(String value) {
            addCriterion("parentId <", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidLessThanOrEqualTo(String value) {
            addCriterion("parentId <=", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidLike(String value) {
            addCriterion("parentId like", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotLike(String value) {
            addCriterion("parentId not like", value, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidIn(List<String> values) {
            addCriterion("parentId in", values, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotIn(List<String> values) {
            addCriterion("parentId not in", values, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidBetween(String value1, String value2) {
            addCriterion("parentId between", value1, value2, "parentid");
            return (Criteria) this;
        }

        public Criteria andParentidNotBetween(String value1, String value2) {
            addCriterion("parentId not between", value1, value2, "parentid");
            return (Criteria) this;
        }

        public Criteria andGradeIsNull() {
            addCriterion("grade is null");
            return (Criteria) this;
        }

        public Criteria andGradeIsNotNull() {
            addCriterion("grade is not null");
            return (Criteria) this;
        }

        public Criteria andGradeEqualTo(Integer value) {
            addCriterion("grade =", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotEqualTo(Integer value) {
            addCriterion("grade <>", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeGreaterThan(Integer value) {
            addCriterion("grade >", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeGreaterThanOrEqualTo(Integer value) {
            addCriterion("grade >=", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeLessThan(Integer value) {
            addCriterion("grade <", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeLessThanOrEqualTo(Integer value) {
            addCriterion("grade <=", value, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeIn(List<Integer> values) {
            addCriterion("grade in", values, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotIn(List<Integer> values) {
            addCriterion("grade not in", values, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeBetween(Integer value1, Integer value2) {
            addCriterion("grade between", value1, value2, "grade");
            return (Criteria) this;
        }

        public Criteria andGradeNotBetween(Integer value1, Integer value2) {
            addCriterion("grade not between", value1, value2, "grade");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("createTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("createTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("createTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("createTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("createTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("createTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("createTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("createTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("createTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCategoryiconIsNull() {
            addCriterion("categoryIcon is null");
            return (Criteria) this;
        }

        public Criteria andCategoryiconIsNotNull() {
            addCriterion("categoryIcon is not null");
            return (Criteria) this;
        }

        public Criteria andCategoryiconEqualTo(String value) {
            addCriterion("categoryIcon =", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconNotEqualTo(String value) {
            addCriterion("categoryIcon <>", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconGreaterThan(String value) {
            addCriterion("categoryIcon >", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconGreaterThanOrEqualTo(String value) {
            addCriterion("categoryIcon >=", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconLessThan(String value) {
            addCriterion("categoryIcon <", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconLessThanOrEqualTo(String value) {
            addCriterion("categoryIcon <=", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconLike(String value) {
            addCriterion("categoryIcon like", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconNotLike(String value) {
            addCriterion("categoryIcon not like", value, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconIn(List<String> values) {
            addCriterion("categoryIcon in", values, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconNotIn(List<String> values) {
            addCriterion("categoryIcon not in", values, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconBetween(String value1, String value2) {
            addCriterion("categoryIcon between", value1, value2, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andCategoryiconNotBetween(String value1, String value2) {
            addCriterion("categoryIcon not between", value1, value2, "categoryicon");
            return (Criteria) this;
        }

        public Criteria andImageIsNull() {
            addCriterion("image is null");
            return (Criteria) this;
        }

        public Criteria andImageIsNotNull() {
            addCriterion("image is not null");
            return (Criteria) this;
        }

        public Criteria andImageEqualTo(String value) {
            addCriterion("image =", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageNotEqualTo(String value) {
            addCriterion("image <>", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageGreaterThan(String value) {
            addCriterion("image >", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageGreaterThanOrEqualTo(String value) {
            addCriterion("image >=", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageLessThan(String value) {
            addCriterion("image <", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageLessThanOrEqualTo(String value) {
            addCriterion("image <=", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageLike(String value) {
            addCriterion("image like", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageNotLike(String value) {
            addCriterion("image not like", value, "image");
            return (Criteria) this;
        }

        public Criteria andImageIn(List<String> values) {
            addCriterion("image in", values, "image");
            return (Criteria) this;
        }

        public Criteria andImageNotIn(List<String> values) {
            addCriterion("image not in", values, "image");
            return (Criteria) this;
        }

        public Criteria andImageBetween(String value1, String value2) {
            addCriterion("image between", value1, value2, "image");
            return (Criteria) this;
        }

        public Criteria andImageNotBetween(String value1, String value2) {
            addCriterion("image not between", value1, value2, "image");
            return (Criteria) this;
        }

        public Criteria andImagepcIsNull() {
            addCriterion("imagePc is null");
            return (Criteria) this;
        }

        public Criteria andImagepcIsNotNull() {
            addCriterion("imagePc is not null");
            return (Criteria) this;
        }

        public Criteria andImagepcEqualTo(String value) {
            addCriterion("imagePc =", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcNotEqualTo(String value) {
            addCriterion("imagePc <>", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcGreaterThan(String value) {
            addCriterion("imagePc >", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcGreaterThanOrEqualTo(String value) {
            addCriterion("imagePc >=", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcLessThan(String value) {
            addCriterion("imagePc <", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcLessThanOrEqualTo(String value) {
            addCriterion("imagePc <=", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcLike(String value) {
            addCriterion("imagePc like", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcNotLike(String value) {
            addCriterion("imagePc not like", value, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcIn(List<String> values) {
            addCriterion("imagePc in", values, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcNotIn(List<String> values) {
            addCriterion("imagePc not in", values, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcBetween(String value1, String value2) {
            addCriterion("imagePc between", value1, value2, "imagepc");
            return (Criteria) this;
        }

        public Criteria andImagepcNotBetween(String value1, String value2) {
            addCriterion("imagePc not between", value1, value2, "imagepc");
            return (Criteria) this;
        }

        public Criteria andChannelIsNull() {
            addCriterion("channel is null");
            return (Criteria) this;
        }

        public Criteria andChannelIsNotNull() {
            addCriterion("channel is not null");
            return (Criteria) this;
        }

        public Criteria andChannelEqualTo(String value) {
            addCriterion("channel =", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotEqualTo(String value) {
            addCriterion("channel <>", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelGreaterThan(String value) {
            addCriterion("channel >", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelGreaterThanOrEqualTo(String value) {
            addCriterion("channel >=", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelLessThan(String value) {
            addCriterion("channel <", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelLessThanOrEqualTo(String value) {
            addCriterion("channel <=", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelLike(String value) {
            addCriterion("channel like", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotLike(String value) {
            addCriterion("channel not like", value, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelIn(List<String> values) {
            addCriterion("channel in", values, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotIn(List<String> values) {
            addCriterion("channel not in", values, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelBetween(String value1, String value2) {
            addCriterion("channel between", value1, value2, "channel");
            return (Criteria) this;
        }

        public Criteria andChannelNotBetween(String value1, String value2) {
            addCriterion("channel not between", value1, value2, "channel");
            return (Criteria) this;
        }

        public Criteria andSortitemIsNull() {
            addCriterion("sortItem is null");
            return (Criteria) this;
        }

        public Criteria andSortitemIsNotNull() {
            addCriterion("sortItem is not null");
            return (Criteria) this;
        }

        public Criteria andSortitemEqualTo(Integer value) {
            addCriterion("sortItem =", value, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemNotEqualTo(Integer value) {
            addCriterion("sortItem <>", value, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemGreaterThan(Integer value) {
            addCriterion("sortItem >", value, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemGreaterThanOrEqualTo(Integer value) {
            addCriterion("sortItem >=", value, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemLessThan(Integer value) {
            addCriterion("sortItem <", value, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemLessThanOrEqualTo(Integer value) {
            addCriterion("sortItem <=", value, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemIn(List<Integer> values) {
            addCriterion("sortItem in", values, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemNotIn(List<Integer> values) {
            addCriterion("sortItem not in", values, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemBetween(Integer value1, Integer value2) {
            addCriterion("sortItem between", value1, value2, "sortitem");
            return (Criteria) this;
        }

        public Criteria andSortitemNotBetween(Integer value1, Integer value2) {
            addCriterion("sortItem not between", value1, value2, "sortitem");
            return (Criteria) this;
        }

        public Criteria andCreateuseridIsNull() {
            addCriterion("createUserId is null");
            return (Criteria) this;
        }

        public Criteria andCreateuseridIsNotNull() {
            addCriterion("createUserId is not null");
            return (Criteria) this;
        }

        public Criteria andCreateuseridEqualTo(String value) {
            addCriterion("createUserId =", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridNotEqualTo(String value) {
            addCriterion("createUserId <>", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridGreaterThan(String value) {
            addCriterion("createUserId >", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridGreaterThanOrEqualTo(String value) {
            addCriterion("createUserId >=", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridLessThan(String value) {
            addCriterion("createUserId <", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridLessThanOrEqualTo(String value) {
            addCriterion("createUserId <=", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridLike(String value) {
            addCriterion("createUserId like", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridNotLike(String value) {
            addCriterion("createUserId not like", value, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridIn(List<String> values) {
            addCriterion("createUserId in", values, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridNotIn(List<String> values) {
            addCriterion("createUserId not in", values, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridBetween(String value1, String value2) {
            addCriterion("createUserId between", value1, value2, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreateuseridNotBetween(String value1, String value2) {
            addCriterion("createUserId not between", value1, value2, "createuserid");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeIsNull() {
            addCriterion("createDateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeIsNotNull() {
            addCriterion("createDateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeEqualTo(Date value) {
            addCriterion("createDateTime =", value, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeNotEqualTo(Date value) {
            addCriterion("createDateTime <>", value, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeGreaterThan(Date value) {
            addCriterion("createDateTime >", value, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("createDateTime >=", value, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeLessThan(Date value) {
            addCriterion("createDateTime <", value, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeLessThanOrEqualTo(Date value) {
            addCriterion("createDateTime <=", value, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeIn(List<Date> values) {
            addCriterion("createDateTime in", values, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeNotIn(List<Date> values) {
            addCriterion("createDateTime not in", values, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeBetween(Date value1, Date value2) {
            addCriterion("createDateTime between", value1, value2, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andCreatedatetimeNotBetween(Date value1, Date value2) {
            addCriterion("createDateTime not between", value1, value2, "createdatetime");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridIsNull() {
            addCriterion("updateUserId is null");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridIsNotNull() {
            addCriterion("updateUserId is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridEqualTo(String value) {
            addCriterion("updateUserId =", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridNotEqualTo(String value) {
            addCriterion("updateUserId <>", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridGreaterThan(String value) {
            addCriterion("updateUserId >", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridGreaterThanOrEqualTo(String value) {
            addCriterion("updateUserId >=", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridLessThan(String value) {
            addCriterion("updateUserId <", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridLessThanOrEqualTo(String value) {
            addCriterion("updateUserId <=", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridLike(String value) {
            addCriterion("updateUserId like", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridNotLike(String value) {
            addCriterion("updateUserId not like", value, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridIn(List<String> values) {
            addCriterion("updateUserId in", values, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridNotIn(List<String> values) {
            addCriterion("updateUserId not in", values, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridBetween(String value1, String value2) {
            addCriterion("updateUserId between", value1, value2, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdateuseridNotBetween(String value1, String value2) {
            addCriterion("updateUserId not between", value1, value2, "updateuserid");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeIsNull() {
            addCriterion("updateDateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeIsNotNull() {
            addCriterion("updateDateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeEqualTo(Date value) {
            addCriterion("updateDateTime =", value, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeNotEqualTo(Date value) {
            addCriterion("updateDateTime <>", value, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeGreaterThan(Date value) {
            addCriterion("updateDateTime >", value, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("updateDateTime >=", value, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeLessThan(Date value) {
            addCriterion("updateDateTime <", value, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeLessThanOrEqualTo(Date value) {
            addCriterion("updateDateTime <=", value, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeIn(List<Date> values) {
            addCriterion("updateDateTime in", values, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeNotIn(List<Date> values) {
            addCriterion("updateDateTime not in", values, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeBetween(Date value1, Date value2) {
            addCriterion("updateDateTime between", value1, value2, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatedatetimeNotBetween(Date value1, Date value2) {
            addCriterion("updateDateTime not between", value1, value2, "updatedatetime");
            return (Criteria) this;
        }

        public Criteria andCategorycodeIsNull() {
            addCriterion("categoryCode is null");
            return (Criteria) this;
        }

        public Criteria andCategorycodeIsNotNull() {
            addCriterion("categoryCode is not null");
            return (Criteria) this;
        }

        public Criteria andCategorycodeEqualTo(String value) {
            addCriterion("categoryCode =", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeNotEqualTo(String value) {
            addCriterion("categoryCode <>", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeGreaterThan(String value) {
            addCriterion("categoryCode >", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeGreaterThanOrEqualTo(String value) {
            addCriterion("categoryCode >=", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeLessThan(String value) {
            addCriterion("categoryCode <", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeLessThanOrEqualTo(String value) {
            addCriterion("categoryCode <=", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeLike(String value) {
            addCriterion("categoryCode like", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeNotLike(String value) {
            addCriterion("categoryCode not like", value, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeIn(List<String> values) {
            addCriterion("categoryCode in", values, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeNotIn(List<String> values) {
            addCriterion("categoryCode not in", values, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeBetween(String value1, String value2) {
            addCriterion("categoryCode between", value1, value2, "categorycode");
            return (Criteria) this;
        }

        public Criteria andCategorycodeNotBetween(String value1, String value2) {
            addCriterion("categoryCode not between", value1, value2, "categorycode");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeIsNull() {
            addCriterion("earlyWarningTime is null");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeIsNotNull() {
            addCriterion("earlyWarningTime is not null");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeEqualTo(Integer value) {
            addCriterion("earlyWarningTime =", value, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeNotEqualTo(Integer value) {
            addCriterion("earlyWarningTime <>", value, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeGreaterThan(Integer value) {
            addCriterion("earlyWarningTime >", value, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("earlyWarningTime >=", value, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeLessThan(Integer value) {
            addCriterion("earlyWarningTime <", value, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeLessThanOrEqualTo(Integer value) {
            addCriterion("earlyWarningTime <=", value, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeIn(List<Integer> values) {
            addCriterion("earlyWarningTime in", values, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeNotIn(List<Integer> values) {
            addCriterion("earlyWarningTime not in", values, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeBetween(Integer value1, Integer value2) {
            addCriterion("earlyWarningTime between", value1, value2, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andEarlywarningtimeNotBetween(Integer value1, Integer value2) {
            addCriterion("earlyWarningTime not between", value1, value2, "earlywarningtime");
            return (Criteria) this;
        }

        public Criteria andRecommendIsNull() {
            addCriterion("recommend is null");
            return (Criteria) this;
        }

        public Criteria andRecommendIsNotNull() {
            addCriterion("recommend is not null");
            return (Criteria) this;
        }

        public Criteria andRecommendEqualTo(Boolean value) {
            addCriterion("recommend =", value, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendNotEqualTo(Boolean value) {
            addCriterion("recommend <>", value, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendGreaterThan(Boolean value) {
            addCriterion("recommend >", value, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendGreaterThanOrEqualTo(Boolean value) {
            addCriterion("recommend >=", value, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendLessThan(Boolean value) {
            addCriterion("recommend <", value, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendLessThanOrEqualTo(Boolean value) {
            addCriterion("recommend <=", value, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendIn(List<Boolean> values) {
            addCriterion("recommend in", values, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendNotIn(List<Boolean> values) {
            addCriterion("recommend not in", values, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendBetween(Boolean value1, Boolean value2) {
            addCriterion("recommend between", value1, value2, "recommend");
            return (Criteria) this;
        }

        public Criteria andRecommendNotBetween(Boolean value1, Boolean value2) {
            addCriterion("recommend not between", value1, value2, "recommend");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}